import { ref } from "vue";
import { useStore } from "vuex";

/**
 * 完善个人信息请求
 * @returns { handleExitLogin, isLoading }
 */
export function useExitLogin() {

    const isLoading = ref(false); // 加载状态

    const store = useStore(); // 获取 Vuex Store 实例

    // 处理完善个人信息
    const handleExitLogin = async () => {
        isLoading.value = true; // 设置加载状态为 true

        try {
            // 调用 Vuex 中的 exitLogin action
            const response = await store.dispatch("exitLogin",);
            if (response.success) {
                store.commit("clearAuth");
                alert("退出成功");
            } else {
                alert(response.message || "退出失败");
            }
        } catch (error) {
            console.error("退出失败:", error);
            alert("退出失败，请检查网络或稍后再试");
        } finally {
            isLoading.value = false; // 重置加载状态
        }
    };

    // 返回封装的响应式变量和方法
    return {
        handleExitLogin,
        isLoading,
    };
}
